Many medical devices require software in addition to a measurement component for their operation. Devices developed and released at different times can have different software versions that may not be compatible to communicate with other devices or to a central monitoring unit. Also, a software architecture where software items cannot be reused, or where a change to one software component requires changes to all software components, can inhibit the pace of development and can increase the cost of maintaining such a system.